//
// WARNING: This data was only roughly generated and isn't completely accurate.
// in particular the time of day offsets aren't filled in correctly.
//
// This data was generated using the myparse.pl script on the olson  tz database
// cd tzdata2008 ; cat * | myparse.pl > data-part.cs
//
using System;

namespace TZ
{
    class OffsetInfo
    {
        public int    OffsetMinutes;
        public string Name;
        public int    StartMonth;
        public int    StartDay;
        public int    StartDate;
        public int    StartTime;

        public OffsetInfo(int OffsetMinutes, string Name, int StartMonth, int StartDay, int StartDate, int StartTime)
        {
            this.OffsetMinutes = OffsetMinutes;
            this.Name = Name;
            this.StartDate = StartDate;
            this.StartDay = StartDay;
            this.StartMonth = StartMonth;
            this.StartTime = StartTime;
        }
    }

    class TzData
    {
        public double       Latitude;
        public double       Longitude;
        public string       Location;
        public OffsetInfo   Offset1;
        public OffsetInfo   Offset2;

        public TzData(double Latitude, double Longitude, string Location, OffsetInfo offset1, OffsetInfo offset2)
        {
            this.Latitude = Latitude;
            this.Longitude = Longitude;
            this.Location = Location;
            this.Offset1 = offset1;
            this.Offset2 = offset2;
        }

        public static TzData FindTz(double Lat, double Long)
        {
            TzData found = null;
            double distance = 1000000000;

            for (int i = 0; i < TimeZones.Length; i++)
            {
                double test = Math.Sqrt(Math.Pow(Lat - TimeZones[i].Latitude, 2) + Math.Pow(Long - TimeZones[i].Longitude, 2));
                if (test < distance)
                {
                    distance = test;
                    found = TimeZones[i];
                }
            }

            return found;
        }

        public static TzData[] TimeZones =
        {
            new TzData( -78.400, 106.900, "Vostok", new OffsetInfo(360, "VOST", 13, 0, 0, 0), new OffsetInfo(360, "VOST", 13, 0, 0, 0) ),
            new TzData( -77.833, 166.600, "McMurdo", new OffsetInfo(720, "NZST", 4, 0, 1, 2), new OffsetInfo(780, "NZDT", 9, 0, 5, 2) ),
            new TzData( -69.006, 39.590, "Syowa", new OffsetInfo(180, "SYOT", 13, 0, 0, 0), new OffsetInfo(180, "SYOT", 13, 0, 0, 0) ),
            new TzData( -68.583, 77.967, "Davis", new OffsetInfo(420, "DAVT", 13, 0, 0, 0), new OffsetInfo(420, "DAVT", 13, 0, 0, 0) ),
            new TzData( -67.600, 62.883, "Mawson", new OffsetInfo(360, "MAWT", 13, 0, 0, 0), new OffsetInfo(360, "MAWT", 13, 0, 0, 0) ),
            new TzData( -67.567, -68.133, "Rothera", new OffsetInfo(-180, "ROTT", 13, 0, 0, 0), new OffsetInfo(-180, "ROTT", 13, 0, 0, 0) ),
            new TzData( -66.667, 140.017, "DumontDUrville", new OffsetInfo(600, "DDUT", 13, 0, 0, 0), new OffsetInfo(600, "DDUT", 13, 0, 0, 0) ),
            new TzData( -66.283, 110.517, "Casey", new OffsetInfo(480, "WST", 13, 0, 0, 0), new OffsetInfo(480, "WST", 13, 0, 0, 0) ),
            new TzData( -64.800, -64.100, "Palmer", new OffsetInfo(-240, "CLT", 3, 0, 9, 2), new OffsetInfo(-180, "CLST", 10, 0, 9, 2) ),
            new TzData( -54.800, -68.300, "Ushuaia", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -54.267, -36.533, "South Georgia", new OffsetInfo(-120, "GST", 13, 0, 0, 0), new OffsetInfo(-120, "GST", 13, 0, 0, 0) ),
            new TzData( -51.700, -57.850, "Stanley", new OffsetInfo(-240, "FKT", 4, 0, 15, 2), new OffsetInfo(-180, "FKST", 9, 0, 1, 2) ),
            new TzData( -51.633, -69.217, "Rio Gallegos", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -49.353, 70.218, "Kerguelen", new OffsetInfo(300, "TFT", 13, 0, 0, 0), new OffsetInfo(300, "TFT", 13, 0, 0, 0) ),
            new TzData( -43.950, -176.550, "Chatham", new OffsetInfo(765, "CHAST", 4, 0, 1, 2), new OffsetInfo(825, "CHADT", 9, 0, 5, 2) ),
            new TzData( -42.883, 147.317, "Hobart", new OffsetInfo(600, "EST", 4, 0, 1, 2), new OffsetInfo(660, "EST", 10, 0, 1, 2) ),
            new TzData( -39.933, 143.867, "Currie", new OffsetInfo(600, "EST", 4, 0, 1, 2), new OffsetInfo(660, "EST", 10, 0, 1, 2) ),
            new TzData( -37.817, 144.967, "Melbourne", new OffsetInfo(600, "EST", 4, 0, 1, 2), new OffsetInfo(660, "EST", 10, 0, 1, 2) ),
            new TzData( -36.867, 174.767, "Auckland", new OffsetInfo(720, "NZST", 4, 0, 1, 2), new OffsetInfo(780, "NZDT", 9, 0, 5, 2) ),
            new TzData( -34.917, 138.583, "Adelaide", new OffsetInfo(570, "CST", 4, 0, 1, 2), new OffsetInfo(630, "CST", 10, 0, 1, 2) ),
            new TzData( -34.883, -56.183, "Montevideo", new OffsetInfo(-180, "UYT", 3, 0, 8, 2), new OffsetInfo(-120, "UYST", 10, 0, 1, 2) ),
            new TzData( -34.600, -58.450, "Buenos Aires", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -33.867, 151.217, "Sydney", new OffsetInfo(600, "EST", 4, 0, 1, 2), new OffsetInfo(660, "EST", 10, 0, 1, 2) ),
            new TzData( -33.450, -70.667, "Santiago", new OffsetInfo(-240, "CLT", 3, 0, 9, 2), new OffsetInfo(-180, "CLST", 10, 0, 9, 2) ),
            new TzData( -33.317, -66.350, "San Luis", new OffsetInfo(-180, "ART", 13, 0, 0, 0), new OffsetInfo(-180, "ART", 13, 0, 0, 0) ),
            new TzData( -32.883, -68.817, "Mendoza", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -31.950, 141.450, "Broken Hill", new OffsetInfo(570, "CST", 4, 0, 1, 2), new OffsetInfo(630, "CST", 10, 0, 1, 2) ),
            new TzData( -31.550, 159.083, "Lord Howe", new OffsetInfo(630, "LHST", 4, 0, 1, 2), new OffsetInfo(660, "LHST", 10, 0, 1, 2) ),
            new TzData( -31.533, -68.517, "San Juan", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -31.400, -64.183, "Cordoba", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -29.467, 27.500, "Maseru", new OffsetInfo(120, "SAST", 13, 0, 0, 0), new OffsetInfo(120, "SAST", 13, 0, 0, 0) ),
            new TzData( -29.433, -66.850, "La Rioja", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -29.050, 167.967, "Norfolk", new OffsetInfo(690, "NFT", 13, 0, 0, 0), new OffsetInfo(690, "NFT", 13, 0, 0, 0) ),
            new TzData( -28.467, -65.783, "Catamarca", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -27.150, -109.433, "Easter", new OffsetInfo(-360, "EAST", 3, 0, 9, 2), new OffsetInfo(-300, "EASST", 10, 0, 9, 2) ),
            new TzData( -26.817, -65.217, "Tucuman", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -26.300, 31.100, "Mbabane", new OffsetInfo(120, "SAST", 13, 0, 0, 0), new OffsetInfo(120, "SAST", 13, 0, 0, 0) ),
            new TzData( -25.967, 32.583, "Maputo", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -25.750, 25.917, "Gaborone", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -25.267, -57.667, "Asuncion", new OffsetInfo(-240, "PYT", 3, 0, 8, 2), new OffsetInfo(-180, "PYST", 10, 0, 15, 2) ),
            new TzData( -25.067, -130.083, "Pitcairn", new OffsetInfo(-480, "PST", 13, 0, 0, 0), new OffsetInfo(-480, "PST", 13, 0, 0, 0) ),
            new TzData( -24.183, -65.300, "Jujuy", new OffsetInfo(-180, "ART", 3, 0, 15, 2), new OffsetInfo(-120, "ARST", 10, 0, 1, 2) ),
            new TzData( -23.533, -46.617, "Sao Paulo", new OffsetInfo(-180, "BRT", 2, 0, 15, 2), new OffsetInfo(-120, "BRST", 10, 0, 8, 2) ),
            new TzData( -23.133, -134.950, "Gambier", new OffsetInfo(-540, "GAMT", 13, 0, 0, 0), new OffsetInfo(-540, "GAMT", 13, 0, 0, 0) ),
            new TzData( -22.567, 17.100, "Windhoek", new OffsetInfo(60, "WAT", 4, 0, 1, 2), new OffsetInfo(120, "WAST", 9, 0, 1, 2) ),
            new TzData( -20.867, 55.467, "Reunion", new OffsetInfo(240, "RET", 13, 0, 0, 0), new OffsetInfo(240, "RET", 13, 0, 0, 0) ),
            new TzData( -20.450, -54.617, "Campo Grande", new OffsetInfo(-240, "AMT", 2, 0, 15, 2), new OffsetInfo(-180, "AMST", 10, 0, 8, 2) ),
            new TzData( -19.017, 169.917, "Niue", new OffsetInfo(-660, "NUT", 13, 0, 0, 0), new OffsetInfo(-660, "NUT", 13, 0, 0, 0) ),
            new TzData( -18.917, 47.517, "Antananarivo", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( -17.833, 31.050, "Harare", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -17.533, -149.567, "Tahiti", new OffsetInfo(-600, "TAHT", 13, 0, 0, 0), new OffsetInfo(-600, "TAHT", 13, 0, 0, 0) ),
            new TzData( -16.500, -68.150, "La Paz", new OffsetInfo(-240, "BOT", 13, 0, 0, 0), new OffsetInfo(-240, "BOT", 13, 0, 0, 0) ),
            new TzData( -15.917, -5.700, "St Helena", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( -15.783, 35.000, "Blantyre", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -15.583, -56.083, "Cuiaba", new OffsetInfo(-240, "AMT", 2, 0, 15, 2), new OffsetInfo(-180, "AMST", 10, 0, 8, 2) ),
            new TzData( -15.417, 28.283, "Lusaka", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -14.267, -170.700, "Pago Pago", new OffsetInfo(-660, "SST", 13, 0, 0, 0), new OffsetInfo(-660, "SST", 13, 0, 0, 0) ),
            new TzData( -13.833, -171.733, "Apia", new OffsetInfo(-660, "WST", 13, 0, 0, 0), new OffsetInfo(-660, "WST", 13, 0, 0, 0) ),
            new TzData( -13.300, -176.167, "Wallis", new OffsetInfo(720, "WFT", 13, 0, 0, 0), new OffsetInfo(720, "WFT", 13, 0, 0, 0) ),
            new TzData( -12.983, -38.517, "Bahia", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -12.783, 45.233, "Mayotte", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( -12.167, 96.917, "Cocos", new OffsetInfo(390, "CCT", 13, 0, 0, 0), new OffsetInfo(390, "CCT", 13, 0, 0, 0) ),
            new TzData( -11.683, 43.267, "Comoro", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( -11.667, 27.467, "Lubumbashi", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -10.417, 105.717, "Christmas", new OffsetInfo(420, "CXT", 13, 0, 0, 0), new OffsetInfo(420, "CXT", 13, 0, 0, 0) ),
            new TzData( -9.967, -67.800, "Rio Branco", new OffsetInfo(-240, "AMT", 13, 0, 0, 0), new OffsetInfo(-240, "AMT", 13, 0, 0, 0) ),
            new TzData( -9.667, -35.717, "Maceio", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -9.533, 160.200, "Guadalcanal", new OffsetInfo(660, "SBT", 13, 0, 0, 0), new OffsetInfo(660, "SBT", 13, 0, 0, 0) ),
            new TzData( -9.500, 147.167, "Port Moresby", new OffsetInfo(600, "PGT", 13, 0, 0, 0), new OffsetInfo(600, "PGT", 13, 0, 0, 0) ),
            new TzData( -9.367, -171.233, "Fakaofo", new OffsetInfo(-600, "TKT", 13, 0, 0, 0), new OffsetInfo(-600, "TKT", 13, 0, 0, 0) ),
            new TzData( -9.000, -139.500, "Marquesas", new OffsetInfo(-570, "MART", 13, 0, 0, 0), new OffsetInfo(-570, "MART", 13, 0, 0, 0) ),
            new TzData( -8.800, 13.233, "Luanda", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( -8.767, -63.900, "Porto Velho", new OffsetInfo(-240, "AMT", 13, 0, 0, 0), new OffsetInfo(-240, "AMT", 13, 0, 0, 0) ),
            new TzData( -8.550, 125.583, "Dili", new OffsetInfo(540, "TLT", 13, 0, 0, 0), new OffsetInfo(540, "TLT", 13, 0, 0, 0) ),
            new TzData( -8.517, 179.217, "Funafuti", new OffsetInfo(720, "TVT", 13, 0, 0, 0), new OffsetInfo(720, "TVT", 13, 0, 0, 0) ),
            new TzData( -8.050, -34.900, "Recife", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -7.333, 72.417, "Chagos", new OffsetInfo(360, "IOT", 13, 0, 0, 0), new OffsetInfo(360, "IOT", 13, 0, 0, 0) ),
            new TzData( -7.200, -48.200, "Araguaina", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -6.800, 39.283, "Dar es Salaam", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( -6.667, -69.867, "Eirunepe", new OffsetInfo(-240, "AMT", 13, 0, 0, 0), new OffsetInfo(-240, "AMT", 13, 0, 0, 0) ),
            new TzData( -6.167, 106.800, "Jakarta", new OffsetInfo(420, "WIT", 13, 0, 0, 0), new OffsetInfo(420, "WIT", 13, 0, 0, 0) ),
            new TzData( -5.117, 119.400, "Makassar", new OffsetInfo(480, "CIT", 13, 0, 0, 0), new OffsetInfo(480, "CIT", 13, 0, 0, 0) ),
            new TzData( -4.667, 55.467, "Mahe", new OffsetInfo(240, "SCT", 13, 0, 0, 0), new OffsetInfo(240, "SCT", 13, 0, 0, 0) ),
            new TzData( -4.300, 15.300, "Kinshasa", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( -4.267, 15.283, "Brazzaville", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( -3.850, -32.417, "Noronha", new OffsetInfo(-120, "FNT", 13, 0, 0, 0), new OffsetInfo(-120, "FNT", 13, 0, 0, 0) ),
            new TzData( -3.717, -38.500, "Fortaleza", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -3.383, 29.367, "Bujumbura", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -3.133, -60.017, "Manaus", new OffsetInfo(-240, "AMT", 13, 0, 0, 0), new OffsetInfo(-240, "AMT", 13, 0, 0, 0) ),
            new TzData( -3.133, -171.083, "Enderbury", new OffsetInfo(780, "PHOT", 13, 0, 0, 0), new OffsetInfo(780, "PHOT", 13, 0, 0, 0) ),
            new TzData( -2.533, 140.700, "Jayapura", new OffsetInfo(540, "EIT", 13, 0, 0, 0), new OffsetInfo(540, "EIT", 13, 0, 0, 0) ),
            new TzData( -2.433, -54.867, "Santarem", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -2.167, -79.833, "Guayaquil", new OffsetInfo(-300, "ECT", 13, 0, 0, 0), new OffsetInfo(-300, "ECT", 13, 0, 0, 0) ),
            new TzData( -1.950, 30.067, "Kigali", new OffsetInfo(120, "CAT", 13, 0, 0, 0), new OffsetInfo(120, "CAT", 13, 0, 0, 0) ),
            new TzData( -1.450, -48.483, "Belem", new OffsetInfo(-180, "BRT", 13, 0, 0, 0), new OffsetInfo(-180, "BRT", 13, 0, 0, 0) ),
            new TzData( -1.283, 36.817, "Nairobi", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 0.900, -89.600, "Galapagos", new OffsetInfo(-360, "GALT", 13, 0, 0, 0), new OffsetInfo(-360, "GALT", 13, 0, 0, 0) ),
            new TzData( 0.517, 166.917, "Nauru", new OffsetInfo(720, "NRT", 13, 0, 0, 0), new OffsetInfo(720, "NRT", 13, 0, 0, 0) ),
            new TzData( 0.033, 109.333, "Pontianak", new OffsetInfo(420, "WIT", 13, 0, 0, 0), new OffsetInfo(420, "WIT", 13, 0, 0, 0) ),
            new TzData( 0.317, 32.417, "Kampala", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 0.333, 6.733, "Sao Tome", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 0.383, 9.450, "Libreville", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 1.283, 103.850, "Singapore", new OffsetInfo(480, "SGT", 13, 0, 0, 0), new OffsetInfo(480, "SGT", 13, 0, 0, 0) ),
            new TzData( 1.417, 173.000, "Tarawa", new OffsetInfo(720, "GILT", 13, 0, 0, 0), new OffsetInfo(720, "GILT", 13, 0, 0, 0) ),
            new TzData( 1.550, 110.333, "Kuching", new OffsetInfo(480, "MYT", 13, 0, 0, 0), new OffsetInfo(480, "MYT", 13, 0, 0, 0) ),
            new TzData( 1.867, -157.333, "Kiritimati", new OffsetInfo(840, "LINT", 13, 0, 0, 0), new OffsetInfo(840, "LINT", 13, 0, 0, 0) ),
            new TzData( 2.067, 45.367, "Mogadishu", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 2.817, -60.667, "Boa Vista", new OffsetInfo(-240, "AMT", 13, 0, 0, 0), new OffsetInfo(-240, "AMT", 13, 0, 0, 0) ),
            new TzData( 3.167, 101.700, "Kuala Lumpur", new OffsetInfo(480, "MYT", 13, 0, 0, 0), new OffsetInfo(480, "MYT", 13, 0, 0, 0) ),
            new TzData( 3.750, 8.783, "Malabo", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 4.050, 9.700, "Douala", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 4.167, 73.500, "Maldives", new OffsetInfo(300, "MVT", 13, 0, 0, 0), new OffsetInfo(300, "MVT", 13, 0, 0, 0) ),
            new TzData( 4.367, 18.583, "Bangui", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 4.933, -52.333, "Cayenne", new OffsetInfo(-180, "GFT", 13, 0, 0, 0), new OffsetInfo(-180, "GFT", 13, 0, 0, 0) ),
            new TzData( 4.933, 114.917, "Brunei", new OffsetInfo(480, "BNT", 13, 0, 0, 0), new OffsetInfo(480, "BNT", 13, 0, 0, 0) ),
            new TzData( 5.317, 162.983, "Kosrae", new OffsetInfo(660, "KOST", 13, 0, 0, 0), new OffsetInfo(660, "KOST", 13, 0, 0, 0) ),
            new TzData( 5.317, -4.033, "Abidjan", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 5.833, -55.167, "Paramaribo", new OffsetInfo(-180, "SRT", 13, 0, 0, 0), new OffsetInfo(-180, "SRT", 13, 0, 0, 0) ),
            new TzData( 6.133, 1.217, "Lome", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 6.300, -10.783, "Monrovia", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 6.450, 3.400, "Lagos", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 6.483, 2.617, "Porto-Novo", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 6.800, -58.167, "Guyana", new OffsetInfo(-240, "GYT", 13, 0, 0, 0), new OffsetInfo(-240, "GYT", 13, 0, 0, 0) ),
            new TzData( 6.933, 79.850, "Colombo", new OffsetInfo(330, "IST", 13, 0, 0, 0), new OffsetInfo(330, "IST", 13, 0, 0, 0) ),
            new TzData( 6.967, 158.217, "Ponape", new OffsetInfo(660, "PONT", 13, 0, 0, 0), new OffsetInfo(660, "PONT", 13, 0, 0, 0) ),
            new TzData( 7.150, 171.200, "Majuro", new OffsetInfo(720, "MHT", 13, 0, 0, 0), new OffsetInfo(720, "MHT", 13, 0, 0, 0) ),
            new TzData( 7.333, 134.483, "Palau", new OffsetInfo(540, "PWT", 13, 0, 0, 0), new OffsetInfo(540, "PWT", 13, 0, 0, 0) ),
            new TzData( 7.417, 151.783, "Truk", new OffsetInfo(600, "TRUT", 13, 0, 0, 0), new OffsetInfo(600, "TRUT", 13, 0, 0, 0) ),
            new TzData( 8.967, -79.533, "Panama", new OffsetInfo(-300, "EST", 13, 0, 0, 0), new OffsetInfo(-300, "EST", 13, 0, 0, 0) ),
            new TzData( 9.033, 38.700, "Addis Ababa", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 9.083, 167.333, "Kwajalein", new OffsetInfo(720, "MHT", 13, 0, 0, 0), new OffsetInfo(720, "MHT", 13, 0, 0, 0) ),
            new TzData( 9.517, -13.717, "Conakry", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 10.500, -66.933, "Caracas", new OffsetInfo(-270, "VET", 13, 0, 0, 0), new OffsetInfo(-270, "VET", 13, 0, 0, 0) ),
            new TzData( 10.650, -61.517, "Port of Spain", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 10.750, 106.667, "Ho Chi Minh", new OffsetInfo(420, "ICT", 13, 0, 0, 0), new OffsetInfo(420, "ICT", 13, 0, 0, 0) ),
            new TzData( 11.550, 104.917, "Phnom Penh", new OffsetInfo(420, "ICT", 13, 0, 0, 0), new OffsetInfo(420, "ICT", 13, 0, 0, 0) ),
            new TzData( 11.600, 43.150, "Djibouti", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 11.850, -15.583, "Bissau", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 12.050, -61.750, "Grenada", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 12.117, 15.050, "Ndjamena", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 12.183, -69.000, "Curacao", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 12.367, -1.517, "Ouagadougou", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 12.500, -69.967, "Aruba", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 12.650, -8.000, "Bamako", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 12.750, 45.200, "Aden", new OffsetInfo(180, "AST", 13, 0, 0, 0), new OffsetInfo(180, "AST", 13, 0, 0, 0) ),
            new TzData( 13.150, -61.233, "St Vincent", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 13.467, 144.750, "Guam", new OffsetInfo(600, "ChST", 13, 0, 0, 0), new OffsetInfo(600, "ChST", 13, 0, 0, 0) ),
            new TzData( 13.467, -16.650, "Banjul", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 13.517, 2.117, "Niamey", new OffsetInfo(60, "WAT", 13, 0, 0, 0), new OffsetInfo(60, "WAT", 13, 0, 0, 0) ),
            new TzData( 13.750, 100.517, "Bangkok", new OffsetInfo(420, "ICT", 13, 0, 0, 0), new OffsetInfo(420, "ICT", 13, 0, 0, 0) ),
            new TzData( 14.017, -61.000, "St Lucia", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 14.600, -61.083, "Martinique", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 14.667, -17.433, "Dakar", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 14.917, -23.517, "Cape Verde", new OffsetInfo(-60, "CVT", 13, 0, 0, 0), new OffsetInfo(-60, "CVT", 13, 0, 0, 0) ),
            new TzData( 15.200, 145.750, "Saipan", new OffsetInfo(600, "ChST", 13, 0, 0, 0), new OffsetInfo(600, "ChST", 13, 0, 0, 0) ),
            new TzData( 15.300, -61.400, "Dominica", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 15.333, 38.883, "Asmara", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 15.600, 32.533, "Khartoum", new OffsetInfo(180, "EAT", 13, 0, 0, 0), new OffsetInfo(180, "EAT", 13, 0, 0, 0) ),
            new TzData( 16.233, -61.533, "Guadeloupe", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 16.717, -62.217, "Montserrat", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 16.750, -169.517, "Johnston", new OffsetInfo(-600, "HST", 13, 0, 0, 0), new OffsetInfo(-600, "HST", 13, 0, 0, 0) ),
            new TzData( 16.783, 96.167, "Rangoon", new OffsetInfo(390, "MMT", 13, 0, 0, 0), new OffsetInfo(390, "MMT", 13, 0, 0, 0) ),
            new TzData( 17.050, -61.800, "Antigua", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 17.300, -62.717, "St Kitts", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 17.967, 102.600, "Vientiane", new OffsetInfo(420, "ICT", 13, 0, 0, 0), new OffsetInfo(420, "ICT", 13, 0, 0, 0) ),
            new TzData( 18.000, -76.800, "Jamaica", new OffsetInfo(-300, "EST", 13, 0, 0, 0), new OffsetInfo(-300, "EST", 13, 0, 0, 0) ),
            new TzData( 18.100, -15.950, "Nouakchott", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 18.200, -63.067, "Anguilla", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 18.350, -64.933, "St Thomas", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 18.450, -64.617, "Tortola", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 18.468, -66.106, "Puerto Rico", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 18.467, -69.900, "Santo Domingo", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 19.283, 166.617, "Wake", new OffsetInfo(720, "WAKT", 13, 0, 0, 0), new OffsetInfo(720, "WAKT", 13, 0, 0, 0) ),
            new TzData( 19.300, -81.383, "Cayman", new OffsetInfo(-300, "EST", 13, 0, 0, 0), new OffsetInfo(-300, "EST", 13, 0, 0, 0) ),
            new TzData( 19.400, -99.150, "Mexico City", new OffsetInfo(-300, "CDT", 4, 0, 1, 2), new OffsetInfo(-360, "CST", 10, 0, 5, 2) ),
            new TzData( 20.967, -89.617, "Merida", new OffsetInfo(-300, "CDT", 4, 0, 1, 2), new OffsetInfo(-360, "CST", 10, 0, 5, 2) ),
            new TzData( 21.083, -86.767, "Cancun", new OffsetInfo(-300, "CDT", 4, 0, 1, 2), new OffsetInfo(-360, "CST", 10, 0, 5, 2) ),
            new TzData( 21.307, -157.858, "Honolulu", new OffsetInfo(-600, "HST", 13, 0, 0, 0), new OffsetInfo(-600, "HST", 13, 0, 0, 0) ),
            new TzData( 21.467, -71.133, "Grand Turk", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 22.533, 88.367, "Kolkata", new OffsetInfo(330, "IST", 13, 0, 0, 0), new OffsetInfo(330, "IST", 13, 0, 0, 0) ),
            new TzData( 23.133, -82.367, "Havana", new OffsetInfo(-240, "CDT", 3, 0, 15, 2), new OffsetInfo(-300, "CST", 10, 0, 5, 2) ),
            new TzData( 23.217, -106.417, "Mazatlan", new OffsetInfo(-360, "MDT", 4, 0, 1, 2), new OffsetInfo(-420, "MST", 10, 0, 5, 2) ),
            new TzData( 23.600, 58.583, "Muscat", new OffsetInfo(240, "GST", 13, 0, 0, 0), new OffsetInfo(240, "GST", 13, 0, 0, 0) ),
            new TzData( 23.717, 90.417, "Dhaka", new OffsetInfo(360, "BDT", 13, 0, 0, 0), new OffsetInfo(360, "BDT", 13, 0, 0, 0) ),
            new TzData( 24.633, 46.717, "Riyadh", new OffsetInfo(180, "AST", 13, 0, 0, 0), new OffsetInfo(180, "AST", 13, 0, 0, 0) ),
            new TzData( 25.083, -77.350, "Nassau", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 25.283, 51.533, "Qatar", new OffsetInfo(180, "AST", 13, 0, 0, 0), new OffsetInfo(180, "AST", 13, 0, 0, 0) ),
            new TzData( 25.300, 55.300, "Dubai", new OffsetInfo(240, "GST", 13, 0, 0, 0), new OffsetInfo(240, "GST", 13, 0, 0, 0) ),
            new TzData( 25.667, -100.317, "Monterrey", new OffsetInfo(-300, "CDT", 4, 0, 1, 2), new OffsetInfo(-360, "CST", 10, 0, 5, 2) ),
            new TzData( 26.383, 50.583, "Bahrain", new OffsetInfo(180, "AST", 13, 0, 0, 0), new OffsetInfo(180, "AST", 13, 0, 0, 0) ),
            new TzData( 27.150, -13.200, "El Aaiun", new OffsetInfo(0, "WET", 13, 0, 0, 0), new OffsetInfo(0, "WET", 13, 0, 0, 0) ),
            new TzData( 27.467, 89.650, "Thimphu", new OffsetInfo(360, "BTT", 13, 0, 0, 0), new OffsetInfo(360, "BTT", 13, 0, 0, 0) ),
            new TzData( 27.717, 85.317, "Katmandu", new OffsetInfo(345, "NPT", 13, 0, 0, 0), new OffsetInfo(345, "NPT", 13, 0, 0, 0) ),
            new TzData( 28.100, -15.400, "Canary", new OffsetInfo(60, "WEST", 3, 0, 5, 2), new OffsetInfo(0, "WET", 10, 0, 5, 2) ),
            new TzData( 28.217, -177.367, "Midway", new OffsetInfo(-660, "SST", 13, 0, 0, 0), new OffsetInfo(-660, "SST", 13, 0, 0, 0) ),
            new TzData( 28.633, -106.083, "Chihuahua", new OffsetInfo(-360, "MDT", 4, 0, 1, 2), new OffsetInfo(-420, "MST", 10, 0, 5, 2) ),
            new TzData( 29.067, -110.967, "Hermosillo", new OffsetInfo(-420, "MST", 13, 0, 0, 0), new OffsetInfo(-420, "MST", 13, 0, 0, 0) ),
            new TzData( 29.333, 47.983, "Kuwait", new OffsetInfo(180, "AST", 13, 0, 0, 0), new OffsetInfo(180, "AST", 13, 0, 0, 0) ),
            new TzData( 30.050, 31.250, "Cairo", new OffsetInfo(180, "EEST", 4, 5, 5, 2), new OffsetInfo(120, "EET", 8, 4, 5, 2) ),
            new TzData( 31.500, 34.467, "Gaza", new OffsetInfo(180, "EEST", 4, -1, 1, 2), new OffsetInfo(120, "EET", 9, 4, 8, 2) ),
            new TzData( 31.950, 35.933, "Amman", new OffsetInfo(180, "EEST", 3, 4, 5, 2), new OffsetInfo(120, "EET", 10, 5, 5, 2) ),
            new TzData( 32.283, -64.767, "Bermuda", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 32.533, -117.017, "Tijuana", new OffsetInfo(-420, "PDT", 4, 0, 1, 2), new OffsetInfo(-480, "PST", 10, 0, 5, 2) ),
            new TzData( 32.633, -16.900, "Madeira", new OffsetInfo(60, "WEST", 3, 0, 5, 2), new OffsetInfo(0, "WET", 10, 0, 5, 2) ),
            new TzData( 32.900, 13.183, "Tripoli", new OffsetInfo(120, "EET", 13, 0, 0, 0), new OffsetInfo(120, "EET", 13, 0, 0, 0) ),
            new TzData( 33.448, -112.073, "Phoenix", new OffsetInfo(-420, "MST", 13, 0, 0, 0), new OffsetInfo(-420, "MST", 13, 0, 0, 0) ),
            new TzData( 33.500, 36.300, "Damascus", new OffsetInfo(180, "EEST", 4, 5, 1, 2), new OffsetInfo(120, "EET", 10, -1, 1, 2) ),
            new TzData( 33.883, 35.500, "Beirut", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 34.052, -118.243, "Los Angeles", new OffsetInfo(-420, "PDT", 3, 0, 8, 2), new OffsetInfo(-480, "PST", 11, 0, 1, 2) ),
            new TzData( 34.517, 69.200, "Kabul", new OffsetInfo(270, "AFT", 13, 0, 0, 0), new OffsetInfo(270, "AFT", 13, 0, 0, 0) ),
            new TzData( 35.167, 33.367, "Nicosia", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 35.883, -5.317, "Ceuta", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 35.900, 14.517, "Malta", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 36.133, -5.350, "Gibraltar", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 36.783, 3.050, "Algiers", new OffsetInfo(60, "CET", 13, 0, 0, 0), new OffsetInfo(60, "CET", 13, 0, 0, 0) ),
            new TzData( 36.800, 10.183, "Tunis", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 36.830, -84.849, "Monticello", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 37.733, -25.667, "Azores", new OffsetInfo(0, "AZOST", 3, 0, 5, 2), new OffsetInfo(-60, "AZOT", 10, 0, 5, 2) ),
            new TzData( 37.953, -86.761, "Tell City", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 37.950, 58.383, "Ashgabat", new OffsetInfo(300, "TMT", 13, 0, 0, 0), new OffsetInfo(300, "TMT", 13, 0, 0, 0) ),
            new TzData( 37.967, 23.717, "Athens", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 38.254, -85.759, "Louisville", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 38.376, -86.345, "Marengo", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 38.492, -87.279, "Petersburg", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 38.583, 68.800, "Dushanbe", new OffsetInfo(300, "TJT", 13, 0, 0, 0), new OffsetInfo(300, "TJT", 13, 0, 0, 0) ),
            new TzData( 38.677, -87.529, "Vincennes", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 38.717, -9.133, "Lisbon", new OffsetInfo(60, "WEST", 3, 0, 5, 2), new OffsetInfo(0, "WET", 10, 0, 5, 2) ),
            new TzData( 38.748, -85.067, "Vevay", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 39.017, 125.750, "Pyongyang", new OffsetInfo(540, "KST", 13, 0, 0, 0), new OffsetInfo(540, "KST", 13, 0, 0, 0) ),
            new TzData( 39.667, 66.800, "Samarkand", new OffsetInfo(300, "UZT", 13, 0, 0, 0), new OffsetInfo(300, "UZT", 13, 0, 0, 0) ),
            new TzData( 39.739, -104.984, "Denver", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 39.768, -86.158, "Indianapolis", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 40.183, 44.500, "Yerevan", new OffsetInfo(300, "AMST", 3, 0, 5, 2), new OffsetInfo(240, "AMT", 10, 0, 5, 2) ),
            new TzData( 40.383, 49.850, "Baku", new OffsetInfo(300, "AZST", 3, 0, 5, 2), new OffsetInfo(240, "AZT", 10, 0, 5, 2) ),
            new TzData( 40.400, -3.683, "Madrid", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 40.714, -74.006, "New York", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 41.017, 28.967, "Istanbul", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 41.051, -86.603, "Winamac", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 41.296, -86.625, "Knox", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 41.333, 69.300, "Tashkent", new OffsetInfo(300, "UZT", 13, 0, 0, 0), new OffsetInfo(300, "UZT", 13, 0, 0, 0) ),
            new TzData( 41.333, 19.833, "Tirane", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 41.717, 44.817, "Tbilisi", new OffsetInfo(240, "GET", 13, 0, 0, 0), new OffsetInfo(240, "GET", 13, 0, 0, 0) ),
            new TzData( 41.850, -87.650, "Chicago", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 41.900, 12.483, "Rome", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 42.331, -83.046, "Detroit", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 42.500, 1.517, "Andorra", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 42.683, 23.317, "Sofia", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 42.900, 74.600, "Bishkek", new OffsetInfo(360, "KGT", 13, 0, 0, 0), new OffsetInfo(360, "KGT", 13, 0, 0, 0) ),
            new TzData( 43.167, 131.933, "Vladivostok", new OffsetInfo(660, "VLAST", 3, 0, 5, 2), new OffsetInfo(600, "VLAT", 10, 0, 5, 2) ),
            new TzData( 43.250, 76.950, "Almaty", new OffsetInfo(360, "ALMT", 13, 0, 0, 0), new OffsetInfo(360, "ALMT", 13, 0, 0, 0) ),
            new TzData( 43.614, -116.203, "Boise", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 43.650, -79.383, "Toronto", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 43.700, 7.383, "Monaco", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 44.433, 26.100, "Bucharest", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 44.517, 50.267, "Aqtau", new OffsetInfo(300, "AQTT", 13, 0, 0, 0), new OffsetInfo(300, "AQTT", 13, 0, 0, 0) ),
            new TzData( 44.650, -63.600, "Halifax", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 44.800, 65.467, "Qyzylorda", new OffsetInfo(360, "QYZT", 13, 0, 0, 0), new OffsetInfo(360, "QYZT", 13, 0, 0, 0) ),
            new TzData( 44.833, 20.500, "Belgrade", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 44.950, 34.100, "Simferopol", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 45.108, -87.614, "Menominee", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 45.517, -73.567, "Montreal", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 46.100, -64.783, "Moncton", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 46.200, -59.950, "Glace Bay", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 46.845, -101.411, "New Salem", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 46.967, 142.700, "Sakhalin", new OffsetInfo(660, "SAKST", 3, 0, 5, 2), new OffsetInfo(600, "SAKT", 10, 0, 5, 2) ),
            new TzData( 47.000, 28.833, "Chisinau", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 47.050, -56.333, "Miquelon", new OffsetInfo(-120, "PMDT", 3, 0, 8, 2), new OffsetInfo(-180, "PMST", 11, 0, 1, 2) ),
            new TzData( 47.116, -101.299, "Center", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 47.150, 9.517, "Vaduz", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 47.383, 8.533, "Zurich", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            // Fake seattle data
            new TzData( 47.500, -122.333, "Seattle", new OffsetInfo(-420, "PDT", 3, 0, 8, 2), new OffsetInfo(-480, "PST", 11, 0, 1, 2) ),
            new TzData( 47.500, 19.083, "Budapest", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 47.567, -52.717, "St Johns", new OffsetInfo(-150, "NDT", 3, 0, 8, 2), new OffsetInfo(-210, "NST", 11, 0, 1, 2) ),
            new TzData( 47.833, 35.167, "Zaporozhye", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 48.217, 16.333, "Vienna", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 48.383, -89.250, "Thunder Bay", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 48.617, 22.300, "Uzhgorod", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 48.717, -94.567, "Rainy River", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 48.733, 44.417, "Volgograd", new OffsetInfo(240, "VOLST", 3, 0, 5, 2), new OffsetInfo(180, "VOLT", 10, 0, 5, 2) ),
            new TzData( 48.759, -91.622, "Atikokan", new OffsetInfo(-300, "EST", 13, 0, 0, 0), new OffsetInfo(-300, "EST", 13, 0, 0, 0) ),
            new TzData( 48.867, 2.333, "Paris", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 49.017, -88.267, "Nipigon", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 49.267, -123.117, "Vancouver", new OffsetInfo(-420, "PDT", 3, 0, 8, 2), new OffsetInfo(-480, "PST", 11, 0, 1, 2) ),
            new TzData( 49.600, 6.150, "Luxembourg", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 49.883, -97.150, "Winnipeg", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 50.083, 14.433, "Prague", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 50.283, -107.833, "Swift Current", new OffsetInfo(-360, "CST", 13, 0, 0, 0), new OffsetInfo(-360, "CST", 13, 0, 0, 0) ),
            new TzData( 50.283, 57.167, "Aqtobe", new OffsetInfo(300, "AQTT", 13, 0, 0, 0), new OffsetInfo(300, "AQTT", 13, 0, 0, 0) ),
            new TzData( 50.400, -104.650, "Regina", new OffsetInfo(-360, "CST", 13, 0, 0, 0), new OffsetInfo(-360, "CST", 13, 0, 0, 0) ),
            new TzData( 50.433, 30.517, "Kiev", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 50.833, 4.333, "Brussels", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 51.217, 51.350, "Oral", new OffsetInfo(300, "ORAT", 13, 0, 0, 0), new OffsetInfo(300, "ORAT", 13, 0, 0, 0) ),
            new TzData( 51.417, -57.117, "Blanc-Sablon", new OffsetInfo(-240, "AST", 13, 0, 0, 0), new OffsetInfo(-240, "AST", 13, 0, 0, 0) ),
            new TzData( 51.508, 0.125, "London", new OffsetInfo(60, "GMT/BST", 3, 0, 5, 2), new OffsetInfo(0, "GMT/BST", 10, 0, 5, 2) ),
            new TzData( 51.880, -176.658, "Adak", new OffsetInfo(-540, "HADT", 3, 0, 8, 2), new OffsetInfo(-600, "HAST", 11, 0, 1, 2) ),
            new TzData( 52.250, 21.000, "Warsaw", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 52.267, 104.333, "Irkutsk", new OffsetInfo(540, "IRKST", 3, 0, 5, 2), new OffsetInfo(480, "IRKT", 10, 0, 5, 2) ),
            new TzData( 52.367, 4.900, "Amsterdam", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 52.500, 13.367, "Berlin", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 53.017, 158.650, "Kamchatka", new OffsetInfo(780, "PETST", 3, 0, 5, 2), new OffsetInfo(720, "PETT", 10, 0, 5, 2) ),
            new TzData( 53.200, 50.150, "Samara", new OffsetInfo(300, "SAMST", 3, 0, 5, 2), new OffsetInfo(240, "SAMT", 10, 0, 5, 2) ),
            new TzData( 53.333, -60.417, "Goose Bay", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 53.333, -6.250, "Dublin", new OffsetInfo(60, "GMT/IST", 3, 0, 5, 2), new OffsetInfo(0, "GMT/IST", 10, 0, 5, 2) ),
            new TzData( 53.550, -113.467, "Edmonton", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 53.900, 27.567, "Minsk", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 54.683, 25.317, "Vilnius", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 54.717, 20.500, "Kaliningrad", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 55.000, 73.400, "Omsk", new OffsetInfo(420, "OMSST", 3, 0, 5, 2), new OffsetInfo(360, "OMST", 10, 0, 5, 2) ),
            new TzData( 55.033, 82.917, "Novosibirsk", new OffsetInfo(420, "NOVST", 3, 0, 5, 2), new OffsetInfo(360, "NOVT", 10, 0, 5, 2) ),
            new TzData( 55.667, 12.583, "Copenhagen", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 55.750, 37.583, "Moscow", new OffsetInfo(240, "MSK/MSD", 3, 0, 5, 2), new OffsetInfo(180, "MSK/MSD", 10, 0, 5, 2) ),
            new TzData( 56.017, 92.833, "Krasnoyarsk", new OffsetInfo(480, "KRAST", 3, 0, 5, 2), new OffsetInfo(420, "KRAT", 10, 0, 5, 2) ),
            new TzData( 56.850, 60.600, "Yekaterinburg", new OffsetInfo(360, "YEKST", 3, 0, 5, 2), new OffsetInfo(300, "YEKT", 10, 0, 5, 2) ),
            new TzData( 56.950, 24.100, "Riga", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 58.302, -134.420, "Juneau", new OffsetInfo(-480, "AKDT", 3, 0, 8, 2), new OffsetInfo(-540, "AKST", 11, 0, 1, 2) ),
            new TzData( 59.333, 18.050, "Stockholm", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 59.417, 24.750, "Tallinn", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 59.547, -139.727, "Yakutat", new OffsetInfo(-480, "AKDT", 3, 0, 8, 2), new OffsetInfo(-540, "AKST", 11, 0, 1, 2) ),
            new TzData( 59.567, 150.800, "Magadan", new OffsetInfo(720, "MAGST", 3, 0, 5, 2), new OffsetInfo(660, "MAGT", 10, 0, 5, 2) ),
            new TzData( 59.767, -120.233, "Dawson Creek", new OffsetInfo(-420, "MST", 13, 0, 0, 0), new OffsetInfo(-420, "MST", 13, 0, 0, 0) ),
            new TzData( 59.917, 10.750, "Oslo", new OffsetInfo(120, "CEST", 3, 0, 5, 2), new OffsetInfo(60, "CET", 10, 0, 5, 2) ),
            new TzData( 60.167, 24.967, "Helsinki", new OffsetInfo(180, "EEST", 3, 0, 5, 2), new OffsetInfo(120, "EET", 10, 0, 5, 2) ),
            new TzData( 60.717, -135.050, "Whitehorse", new OffsetInfo(-420, "PDT", 3, 0, 8, 2), new OffsetInfo(-480, "PST", 11, 0, 1, 2) ),
            new TzData( 61.218, -149.900, "Anchorage", new OffsetInfo(-480, "AKDT", 3, 0, 8, 2), new OffsetInfo(-540, "AKST", 11, 0, 1, 2) ),
            new TzData( 62.000, 129.667, "Yakutsk", new OffsetInfo(600, "YAKST", 3, 0, 5, 2), new OffsetInfo(540, "YAKT", 10, 0, 5, 2) ),
            new TzData( 62.017, -6.767, "Faroe", new OffsetInfo(60, "WEST", 3, 0, 5, 2), new OffsetInfo(0, "WET", 10, 0, 5, 2) ),
            new TzData( 62.450, -114.350, "Yellowknife", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 62.817, -92.083, "Rankin Inlet", new OffsetInfo(-300, "CDT", 3, 0, 8, 2), new OffsetInfo(-360, "CST", 11, 0, 1, 2) ),
            new TzData( 63.733, -68.467, "Iqaluit", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 64.067, -139.417, "Dawson", new OffsetInfo(-420, "PDT", 3, 0, 8, 2), new OffsetInfo(-480, "PST", 11, 0, 1, 2) ),
            new TzData( 64.150, -21.850, "Reykjavik", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
            new TzData( 64.183, -51.733, "Godthab", new OffsetInfo(-120, "WGST", 3, 0, 5, 2), new OffsetInfo(-180, "WGT", 10, 0, 5, 2) ),
            new TzData( 64.501, -165.406, "Nome", new OffsetInfo(-480, "AKDT", 3, 0, 8, 2), new OffsetInfo(-540, "AKST", 11, 0, 1, 2) ),
            new TzData( 64.750, 177.483, "Anadyr", new OffsetInfo(780, "ANAST", 3, 0, 5, 2), new OffsetInfo(720, "ANAT", 10, 0, 5, 2) ),
            new TzData( 66.133, -65.733, "Pangnirtung", new OffsetInfo(-240, "EDT", 3, 0, 8, 2), new OffsetInfo(-300, "EST", 11, 0, 1, 2) ),
            new TzData( 68.350, -133.717, "Inuvik", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 69.114, -105.053, "Cambridge Bay", new OffsetInfo(-360, "MDT", 3, 0, 8, 2), new OffsetInfo(-420, "MST", 11, 0, 1, 2) ),
            new TzData( 70.483, -21.967, "Scoresbysund", new OffsetInfo(0, "EGST", 3, 0, 5, 2), new OffsetInfo(-60, "EGT", 10, 0, 5, 2) ),
            new TzData( 74.696, -94.829, "Resolute", new OffsetInfo(-300, "EST", 13, 0, 0, 0), new OffsetInfo(-300, "EST", 13, 0, 0, 0) ),
            new TzData( 76.567, -68.783, "Thule", new OffsetInfo(-180, "ADT", 3, 0, 8, 2), new OffsetInfo(-240, "AST", 11, 0, 1, 2) ),
            new TzData( 76.767, -18.667, "Danmarkshavn", new OffsetInfo(0, "GMT", 13, 0, 0, 0), new OffsetInfo(0, "GMT", 13, 0, 0, 0) ),
        };
    }
}

